package cn.iocoder.yudao.module.member.api.curriculumVitaeSendRecord;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.member.api.curriculumVitaeSendRecord.dto.*;

/**
 * 投递记录 API 接口
 *
 * @author 芋道源码
 */
public interface CurriculumVitaeSendRecordApi {

     PageResult<CurriculumVitaeSendRecordGroupRespDTO> checkInfoByJob(CurriculumVitaeSendRecordGroupPageReqDTO pageVO);

     PageResult<CurriculumVitaeSendRecordRespDTO> getpageByJob(CurriculumVitaeSendRecordPageReqDTO pageVO);

     PageResult<CurriculumVitaeSendRecordRespDTO> getCurriculumVitaeSendRecordPage(CurriculumVitaeSendRecordPageReqDTO pageReqVO);

     Long createCurriculumVitaeSendRecord(CurriculumVitaeSendRecordCreateReqDTO createReqVO);

     Long sendCurriculumVitaeSendRecord(CurriculumVitaeSendRecordCreateReqDTO createReqVO);

     Long sendCurriculumVitaeSendRecord(Long jobId,Long userId,Long resumeId,String status,String source,String type);

     PageResult<CurriculumVitaeSendRecordRespDTO> getpage(CurriculumVitaeSendRecordPageReqDTO pageVO);

     PageResult<CurriculumVitaeSendRecordRespJobDTO> getpageJob(CurriculumVitaeSendRecordPageReqDTO pageVO);

     void updateCurriculumVitaeSendRecord(CurriculumVitaeSendRecordUpdateReqDTO updateReqDTO);

     boolean isSend(CurriculumVitaeSendRecordPageReqDTO pageVO);

     Long noOpenCount(CurriculumVitaeSendRecordPageReqDTO pageVO);


     CurriculumVitaeSendRecordRespDTO getCurriculumVitaeSend(Long id,Boolean flag);

     CurriculumVitaeSendRecordRespDTO getCurriculumVitaeSend(Long studentId,Long jobId,Long companyId,Long resumId);

     void updateCurriculumVitaeSend(CurriculumVitaeSendRecordUpdateReqDTO updateReqDTO);

     Long createCollectNotes( CollectNotesDTO createReqVO);

     PageResult<CollectNotesRespDTO> getCollectNotesPage(CollectNotesPageReqDTO pageReqVO);
}
